﻿<UserControl
	xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
	xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
	xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
	xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
	mc:Ignorable="d"
	xmlns:SampleData="clr-namespace:Expression.Blend.SampleData.SampleData"
	xmlns:chartingToolkit="clr-namespace:System.Windows.Controls.DataVisualization.Charting;assembly=System.Windows.Controls.DataVisualization.Toolkit"
    xmlns:chartingPrimitivesToolkit="clr-namespace:System.Windows.Controls.DataVisualization.Charting.Primitives;assembly=System.Windows.Controls.DataVisualization.Toolkit"
    xmlns:visualizationToolkit="clr-namespace:System.Windows.Controls.DataVisualization;assembly=System.Windows.Controls.DataVisualization.Toolkit"             
    xmlns:System_Windows_Controls_DataVisualization_Charting_Primitives="clr-namespace:System.Windows.Controls.DataVisualization.Charting.Primitives;assembly=System.Windows.Controls.DataVisualization.Toolkit"
	x:Class="System8ToyMC.Histogram"
	d:DesignWidth="640" d:DesignHeight="480">

	<UserControl.Resources>
		<SampleData:SampleData x:Key="SampleData" d:IsDataSource="True"/>
  <Style x:Key="ChartStyleMaximize" TargetType="chartingToolkit:Chart">
   <Setter Property="BorderBrush" Value="Black"/>
   <Setter Property="BorderThickness" Value="1"/>
   <Setter Property="IsTabStop" Value="False"/>
   <Setter Property="Palette">
    <Setter.Value>
     <visualizationToolkit:ResourceDictionaryCollection>
      <ResourceDictionary>
       <RadialGradientBrush x:Key="Background" Center="0.075,0.015" GradientOrigin="-0.1,-0.1" RadiusX="1.05" RadiusY="0.9">
        <GradientStop Color="#FFB9D6F7"/>
        <GradientStop Color="#FF284B70" Offset="1"/>
       </RadialGradientBrush>
       <Style x:Key="DataPointStyle" TargetType="Control">
        <Setter Property="Background" Value="{StaticResource Background}"/>
       </Style>
      </ResourceDictionary>
      <ResourceDictionary>
       <RadialGradientBrush x:Key="Background" Center="0.075,0.015" GradientOrigin="-0.1,-0.1" RadiusX="1.05" RadiusY="0.9">
        <GradientStop Color="#FFFBB7B5"/>
        <GradientStop Color="#FF702828" Offset="1"/>
       </RadialGradientBrush>
       <Style x:Key="DataPointStyle" TargetType="Control">
        <Setter Property="Background" Value="{StaticResource Background}"/>
       </Style>
      </ResourceDictionary>
      <ResourceDictionary>
       <RadialGradientBrush x:Key="Background" Center="0.075,0.015" GradientOrigin="-0.1,-0.1" RadiusX="1.05" RadiusY="0.9">
        <GradientStop Color="#FFB8C0AC"/>
        <GradientStop Color="#FF5F7143" Offset="1"/>
       </RadialGradientBrush>
       <Style x:Key="DataPointStyle" TargetType="Control">
        <Setter Property="Background" Value="{StaticResource Background}"/>
       </Style>
      </ResourceDictionary>
      <ResourceDictionary>
       <RadialGradientBrush x:Key="Background" Center="0.075,0.015" GradientOrigin="-0.1,-0.1" RadiusX="1.05" RadiusY="0.9">
        <GradientStop Color="#FFFDE79C"/>
        <GradientStop Color="#FFF6BC0C" Offset="1"/>
       </RadialGradientBrush>
       <Style x:Key="DataPointStyle" TargetType="Control">
        <Setter Property="Background" Value="{StaticResource Background}"/>
       </Style>
      </ResourceDictionary>
      <ResourceDictionary>
       <RadialGradientBrush x:Key="Background" Center="0.075,0.015" GradientOrigin="-0.1,-0.1" RadiusX="1.05" RadiusY="0.9">
        <GradientStop Color="#FFA9A3BD"/>
        <GradientStop Color="#FF382C6C" Offset="1"/>
       </RadialGradientBrush>
       <Style x:Key="DataPointStyle" TargetType="Control">
        <Setter Property="Background" Value="{StaticResource Background}"/>
       </Style>
      </ResourceDictionary>
      <ResourceDictionary>
       <RadialGradientBrush x:Key="Background" Center="0.075,0.015" GradientOrigin="-0.1,-0.1" RadiusX="1.05" RadiusY="0.9">
        <GradientStop Color="#FFB1A1B1"/>
        <GradientStop Color="#FF50224F" Offset="1"/>
       </RadialGradientBrush>
       <Style x:Key="DataPointStyle" TargetType="Control">
        <Setter Property="Background" Value="{StaticResource Background}"/>
       </Style>
      </ResourceDictionary>
      <ResourceDictionary>
       <RadialGradientBrush x:Key="Background" Center="0.075,0.015" GradientOrigin="-0.1,-0.1" RadiusX="1.05" RadiusY="0.9">
        <GradientStop Color="#FF9DC2B3"/>
        <GradientStop Color="#FF1D7554" Offset="1"/>
       </RadialGradientBrush>
       <Style x:Key="DataPointStyle" TargetType="Control">
        <Setter Property="Background" Value="{StaticResource Background}"/>
       </Style>
      </ResourceDictionary>
      <ResourceDictionary>
       <RadialGradientBrush x:Key="Background" Center="0.075,0.015" GradientOrigin="-0.1,-0.1" RadiusX="1.05" RadiusY="0.9">
        <GradientStop Color="#FFB5B5B5"/>
        <GradientStop Color="#FF4C4C4C" Offset="1"/>
       </RadialGradientBrush>
       <Style x:Key="DataPointStyle" TargetType="Control">
        <Setter Property="Background" Value="{StaticResource Background}"/>
       </Style>
      </ResourceDictionary>
      <ResourceDictionary>
       <RadialGradientBrush x:Key="Background" Center="0.075,0.015" GradientOrigin="-0.1,-0.1" RadiusX="1.05" RadiusY="0.9">
        <GradientStop Color="#FF98C1DC"/>
        <GradientStop Color="#FF0271AE" Offset="1"/>
       </RadialGradientBrush>
       <Style x:Key="DataPointStyle" TargetType="Control">
        <Setter Property="Background" Value="{StaticResource Background}"/>
       </Style>
      </ResourceDictionary>
      <ResourceDictionary>
       <RadialGradientBrush x:Key="Background" Center="0.075,0.015" GradientOrigin="-0.1,-0.1" RadiusX="1.05" RadiusY="0.9">
        <GradientStop Color="#FFC1C0AE"/>
        <GradientStop Color="#FF706E41" Offset="1"/>
       </RadialGradientBrush>
       <Style x:Key="DataPointStyle" TargetType="Control">
        <Setter Property="Background" Value="{StaticResource Background}"/>
       </Style>
      </ResourceDictionary>
      <ResourceDictionary>
       <RadialGradientBrush x:Key="Background" Center="0.075,0.015" GradientOrigin="-0.1,-0.1" RadiusX="1.05" RadiusY="0.9">
        <GradientStop Color="#FFADBDC0"/>
        <GradientStop Color="#FF446A73" Offset="1"/>
       </RadialGradientBrush>
       <Style x:Key="DataPointStyle" TargetType="Control">
        <Setter Property="Background" Value="{StaticResource Background}"/>
       </Style>
      </ResourceDictionary>
      <ResourceDictionary>
       <RadialGradientBrush x:Key="Background" Center="0.075,0.015" GradientOrigin="-0.1,-0.1" RadiusX="1.05" RadiusY="0.9">
        <GradientStop Color="#FF2F8CE2"/>
        <GradientStop Color="#FF0C3E69" Offset="1"/>
       </RadialGradientBrush>
       <Style x:Key="DataPointStyle" TargetType="Control">
        <Setter Property="Background" Value="{StaticResource Background}"/>
       </Style>
      </ResourceDictionary>
      <ResourceDictionary>
       <RadialGradientBrush x:Key="Background" Center="0.075,0.015" GradientOrigin="-0.1,-0.1" RadiusX="1.05" RadiusY="0.9">
        <GradientStop Color="#FFDCDCDC"/>
        <GradientStop Color="#FF757575" Offset="1"/>
       </RadialGradientBrush>
       <Style x:Key="DataPointStyle" TargetType="Control">
        <Setter Property="Background" Value="{StaticResource Background}"/>
       </Style>
      </ResourceDictionary>
      <ResourceDictionary>
       <RadialGradientBrush x:Key="Background" Center="0.075,0.015" GradientOrigin="-0.1,-0.1" RadiusX="1.05" RadiusY="0.9">
        <GradientStop Color="#FFF4F4F4"/>
        <GradientStop Color="#FFB7B7B7" Offset="1"/>
       </RadialGradientBrush>
       <Style x:Key="DataPointStyle" TargetType="Control">
        <Setter Property="Background" Value="{StaticResource Background}"/>
       </Style>
      </ResourceDictionary>
      <ResourceDictionary>
       <RadialGradientBrush x:Key="Background" Center="0.075,0.015" GradientOrigin="-0.1,-0.1" RadiusX="1.05" RadiusY="0.9">
        <GradientStop Color="#FFF4F4F4"/>
        <GradientStop Color="#FFA3A3A3" Offset="1"/>
       </RadialGradientBrush>
       <Style x:Key="DataPointStyle" TargetType="Control">
        <Setter Property="Background" Value="{StaticResource Background}"/>
       </Style>
      </ResourceDictionary>
     </visualizationToolkit:ResourceDictionaryCollection>
    </Setter.Value>
   </Setter>
   <Setter Property="TitleStyle">
    <Setter.Value>
     <Style TargetType="visualizationToolkit:Title">
      <Setter Property="FontSize" Value="16"/>
      <Setter Property="HorizontalAlignment" Value="Center"/>
      <Setter Property="Margin" Value="0,10,0,10"/>
     </Style>
    </Setter.Value>
   </Setter>
   <Setter Property="LegendStyle">
    <Setter.Value>
     <Style TargetType="visualizationToolkit:Legend">
      <Setter Property="Margin" Value="15,0,15,0"/>
      <Setter Property="VerticalAlignment" Value="Center"/>
      <Setter Property="BorderBrush" Value="#FFDBDBDB"/>
      <Setter Property="Background">
       <Setter.Value>
        <LinearGradientBrush EndPoint="0.442,0.005" StartPoint="0.558,0.995">
         <GradientStop Color="#FFDBDBDB"/>
         <GradientStop Color="#FFFFFFFF" Offset="1"/>
        </LinearGradientBrush>
       </Setter.Value>
      </Setter>
     </Style>
    </Setter.Value>
   </Setter>
   <Setter Property="ChartAreaStyle">
    <Setter.Value>
     <Style TargetType="Panel">
      <Setter Property="MinWidth" Value="100"/>
      <Setter Property="MinHeight" Value="75"/>
     </Style>
    </Setter.Value>
   </Setter>
   <Setter Property="PlotAreaStyle">
    <Setter.Value>
     <Style TargetType="Grid">
      <Setter Property="Background">
       <Setter.Value>
        <LinearGradientBrush EndPoint="0.457,0.296" StartPoint="0.459,1.296">
         <GradientStop Color="#FFCBCBCB"/>
         <GradientStop Color="#FFFFFFFF" Offset="1"/>
        </LinearGradientBrush>
       </Setter.Value>
      </Setter>
     </Style>
    </Setter.Value>
   </Setter>
   <Setter Property="Template">
    <Setter.Value>
     <ControlTemplate TargetType="chartingToolkit:Chart">
      <Border Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Padding="10">
       <Grid>
      		<Grid Margin="0" Grid.Row="1">
      			<Grid.ColumnDefinitions>
      				<ColumnDefinition Width="*"/>
      				<ColumnDefinition Width="Auto"/>
      			</Grid.ColumnDefinitions>
      			<System_Windows_Controls_DataVisualization_Charting_Primitives:EdgePanel x:Name="ChartArea" Style="{TemplateBinding ChartAreaStyle}">
      				<Grid Style="{TemplateBinding PlotAreaStyle}" Canvas.ZIndex="-1"/>
      				<Border Canvas.ZIndex="10" BorderBrush="#FF919191" BorderThickness="1"/>
      			</System_Windows_Controls_DataVisualization_Charting_Primitives:EdgePanel>
      		</Grid>
      		<visualizationToolkit:Title Style="{TemplateBinding TitleStyle}" Content="{TemplateBinding Title}" HorizontalAlignment="Left" Margin="51,49,0,0" VerticalAlignment="Top" Background="#FFF4F4F4" BorderBrush="#FF44A99F" BorderThickness="1,1,1,11"/>
      	</Grid>
      </Border>
     </ControlTemplate>
    </Setter.Value>
   </Setter>
  </Style>
  	</UserControl.Resources>

	<Grid x:Name="LayoutRoot" d:DataContext="{Binding Source={StaticResource SampleData}}" MinWidth="300" MinHeight="250">
		<chartingToolkit:Chart x:Name="MainChart" Margin="0" Title="{Binding XAxisName, Mode=OneWay}" d:LayoutOverrides="Width, Height" DataContext="{Binding Mode=OneWay}" d:DataContext="{Binding Mode=OneWay}" Style="{StaticResource ChartStyleMaximize}" >
			<chartingToolkit:ColumnSeries IndependentValuePath="BinValue" ItemsSource="{Binding Values, Mode=OneWay}" Title="Fork" DependentValuePath="Content" x:Name="SeriesDisplay" TransitionDuration="00:00:00" >
				<chartingToolkit:ColumnSeries.IndependentAxis>
					<chartingToolkit:LinearAxis Interval="{Binding AxisLabelInterval, Mode=OneWay}" Orientation="X"/>
				</chartingToolkit:ColumnSeries.IndependentAxis>
			</chartingToolkit:ColumnSeries>
		</chartingToolkit:Chart>
	</Grid>
</UserControl>